// pages/fastmail/fastmail.js
import {_getFastMail} from '../../api/common'
Page({

  /**
   * 页面的初始数据
   */
  data: {
    MapContext:"",//地图组件
    pic:"",
    polyline: [], //线的数据
    fastObj:{
      101 :"揽件",
      102: "在途中",
      103: "派送中",
      104:"已签收", 
      112:"待签"
    },
    fastIcon:{
      101 :"../../images/nav/cart-on.png",
      102: "../../images/nav/home-on.png",
      103: "../../images/nav/my-on.png",
      104:"../../images/nav/ic_catefory_pressed.png", 
      112:"../../images/nav/order-on.png"
    },
    nu:"",//快递单号，
    com_name:'',//快递公司名称
    fastList:[],//物流信息
    logo:"", //快递公司的logo
    latitude: 23.099994,
    longitude: 113.324520,
    makers:[], //点的数据
    hasMarkers:false, //是否设置好数据的标识
    covers: [{
      latitude: 23.099994,
      longitude: 113.344520,
      iconPath: '/image/location.png'
    }, {
      latitude: 23.099994,
      longitude: 113.304520,
      iconPath: '/image/location.png'
    }]
  },
  // 获取物流信息接口
  async getFast(){
    var res=await _getFastMail({
      showapi_appid:"1112914", 
      showapi_sign:"d1d86f22f876493185edb6657b197bb3",
      com:"shentong",//快递公司简拼
      nu:"773172710963156", //快递单号
      phone:'18600002762'//手机号
    })
    console.log(res)
    let arr=res.data.showapi_res_body.data;
 
    // 获取地图组件
    var MapContext=wx.createMapContext('myMap')
    console.log(MapContext)
   
        this.setData({
          fastList:arr,
          nu:res.data.showapi_res_body.nu,
          com_name:res.data.showapi_res_body.com_name,
          logo:res.data.showapi_res_body.logo
        })
    // 设置地图的标注点 并连接
    var makers=[] //点的数组
    var path=[] //线的数组
    arr.forEach((item,index)=>{
      let locationArr=item.location.split(",");
      console.log(locationArr)
      if(locationArr.length>1){
        makers.push({
          id: index+1,
          latitude:Number(locationArr[1]),
          longitude:Number(locationArr[0]),
          name: item.address,
          iconPath: '../../images/小车.png',
          width: 30,
          height: 30,
          anchor : {
            x: 0.5,
            y: 0.4
          }
        })
        // 整理线的数组
        path.push({
          latitude:parseFloat(locationArr[1]),
          longitude:parseFloat(locationArr[0])
        })
      }
    })
  
    console.log(path)
 
      this.setData({
        makers:makers,
        ['polyline[0].points']:path, //设置整理好的线的数组
        ['polyline[0].color']:"#c71d39",
        ['polyline[0].width']:5
    })
    setTimeout(()=>{
      this.setData({
        hasMarkers:true,
      })
    },0)
    console.log(this.data.polyline)
    // 注入点的轨迹方法
    MapContext.includePoints({
      points:path
    })
    // 移动效果
    MapContext.moveAlong({
      markerId: 1, //开始点的id
      autoRotate: true,
      path: path.reverse(), //路径坐标
      duration: 15000,
    })
    console.log(this.data.makers)
   
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    //接受商品图片 
      this.setData({
        pic:options.pic
      })
      this.getFast();
  },
  
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    // this.getFast();
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})